﻿#if 0

#if 0

2020/08/04
知识点：int变量深入
https://www.bilibili.com/video/BV18W411R7zk?p=12
知识点：有符号整形
https://www.bilibili.com/video/BV18W411R7zk?p=13
知识点：无符号整形
https://www.bilibili.com/video/BV18W411R7zk?p=14

#endif

#if 0

	意义：
		声明一个int类型变量就是声明一个存储int类型数据的容器 这个容器可以放任何int类型数据

	使用：
		声明：没有给初始值			int a;			系统会给一个默认值 查看系统默认值
		定义：有初始值 / 初始化		int a = 12;		建议：定义变量尽量都给它初始化

	赋值：
		数据赋值给变量		a = 13
		变量赋值给变量		int b = a
		连续赋值			a = b = 14				从右向左执行！！！ 从右向左执行！！！从右向左执行！！！

	变量与常量：
		常量：13 只代表自己，值不能改变
		变量：a  值可以改变

#endif

#include <iostream>
#include <stdio.h>
#include <stdlib.h>
using namespace std;


int main()
{
	int a = 13;
	//左值是变量 右值是常量

#if 0

	有符号:
		signed int(singed可省略)
		表示数的范围： -2^31~2^31-1 （ - 2147483648~2147483647)

		内存大小:
			4字节
			字节是计算机常用的存储数据
			位是计算机最小的存储单位
			1字节等于8个2进制位
			一个2进制位只有两个数0或者1
			4个字节就是32个2进制位

		得到类型的大小:
			sizeof()
			sizeof(类型)
			sizeof(变量名)

#endif

	//signed可以忽略 int b
	signed int b = 2147483647;   
	cout << b << endl;

	b = 2147483648;
	cout << b << endl;

	b = -2147483648;
	cout << b << endl;

	b = -2147483650;
	cout << b << endl;
	//观察上面语句的输出结果，可以得出数值范围就像收尾相连的圈，数值若超出了末端值，会跳到另一个末端值

	//类型大小
	cout << sizeof(int) << endl;
	cout << sizeof(b = 1) << endl;

#if 0

	无符号:
		unsigned int  unsigned int a;

	表示数范围:
		0~2^32-1(0~‭4294967295‬);

	内存大小:
		4字节			  字节个数跟有符号一样
		得到类型的大小	  sizeof(unsigned int)

		输出:
		printf("%u", a);  %u表示无符号十进制整型的输出

#endif

	//无符号
	unsigned int c = 4294967295;
	cout << c << endl;

	//%u表示无符号十进制整型的输出
	printf("%u\n", c);

	c = 4294967296;
	cout << c << endl;

	c = -1;
	cout << c << endl;

	system("pause");
	return 0;
}

#endif